Storage systems typically employ a number of different techniques for minimizing errors in reading from a storage media. For example, redundant symbols of an error control code are appended after each data block recorded on the storage media. The redundant symbols can be utilized to detect data block errors when the storage system attempts to read a data block. A block read fails when the number of symbol errors exceeds the capability of an error correcting code (ECC). Conventionally, when a read failure is detected by the error control code, the storage system reads the block of data a second time. Unfortunately, reread operations increase system latency and degrade system throughput, in part, due to the process of repositioning the read head and to the associated rereading of the data block.
Due to the overhead associated with reread operations, techniques have been developed to exploit the reread signals more efficiently than simply independently decoding the reread signals. One technique for exploiting the reread signals more efficiently may be referred to as a waveform averaging retrial, which is described in an article entitled “Improving Re-read Strategies by Waveform Averaging” by A. Patapoutian et al., IEEE Transactions on Magnetics, Vol. 37, No. 6, November, 2001, pp. 3969-3976, and which is incorporated herein by reference in its entirety. The waveform averaging retrial technique involves-averaging the reread signal with samples obtained from the first read attempt and decoding the averaged samples. The averaging process reduces non-repeatable noise, thereby increasing the signal-to-noise ratio.
Another technique for exploiting the reread signals more efficiently may be referred to as an erasure ECC retrial, which is described in U.S. Pat. No. 6,389,573, entitled “Enhanced Read Retrial Scheme” and which is incorporated herein by reference in its entirety. The erasure ECC retrial generally compares the decoded results of the first read and the reread of the data to identify symbols locations for which corresponding symbols are of unequal value. At least one of the codeword copies is decoded by an error-erasure decoding operation using the identified symbol locations as erasures. By converting the errors to erasures, the ECC decoder can tolerate up to twice as many symbol errors than would ordinarily be acceptable. Thus, the retrial procedure is enhanced.
A third technique involves ECC aided bias-detection, which is described in U.S. Pat. No. 6,405,342 entitled “Disk Drive Employing a Multiple-Input Sequence Detector Responsive to Reliability Metrics to Improve a Retry Operation” and which is incorporated herein by reference in its entirety. ECC aided bias-detection utilizes correctly decoded bits from the first read operation to bias or “guide” the sequence detection for the reread signal.
In general, there is an on-going need for improvements in the bit error rate (BER) at realistic signal-to-noise ratios without adversely impacting performance criteria, such as capacity, throughput, latency and the like. Embodiments of the present invention provide solutions to these and other problems, and offer other advantages over the prior art.